This invention relates to telecommunications user features.
Call coverage is a call-redirection feature that provides for a plurality of alternative-destination telephone numbers (or other telecommunication addresses) to which the telecommunications system can sequentially try to deliver a call (or other communication) intended for a principal when the call cannot be completed to the principal telephone number or when the principal elects not to receive the call at the principal telephone number. The sequence of numbers is referred to as a path.
Recently, telecommunications systems have begun to provide users with the capability of programming their own call-coverage paths, and of doing so via a graphical user interface (GUI). An illustrative example thereof is described in U.S. Pat. No. 5,745,561. The system there described allows a principal to use a GUI interface to program (administer) multiple independent call-coverage paths for the principal""s telephone number, and also to program selection criteria for each path such that selection of an individual call-coverage path for an individual call to the principal""s telephone number depends on which path""s selection criteria are matched by the parameters of the individual call.
The present practice for updating a call-coverage path to accurately reflect an individual""s schedule of availability and location requires the individual to ender data into the coverage-path system. This falls short of a completely desirable solution in that, if a person""s schedule changes, they must enter that information into both their personal scheduling software (such as a calendar) and the coverage-path system. Also, the present practice for administering call-coverage paths typically involves one of the following methods: choosing from a list of pre-set coverage paths; editing the coverage paths or their selection criteria (including any logical decisions to be made) in a text-based form; or editing the coverage path through a phone-in interface. All of these methods are somewhat limiting in that they either have a limited capability for specifying rules, or the resulting specified logic is difficult to visualize due to the text-form-based presentation.
This invention is directed to solving these and other problems and disadvantages of the prior art. Illustratively according to the invention, a call-coverage path is defined by drawing a graphical flowchart by using an interactive graphical user interface (GUI) of a PC-based software application. Once the flowchart is drawn, it is activated with the push of a button, and that flowchart is now the logic that is applied to a user""s coverage path. The call-coverage path (the flowchart) remains resident on the user""s PC and the communications system retrieves call-coverage information from the PC whenever it must perform call coverage for that user. A plurality of different flowcharts may be drawn and stored on the PC, and then recalled and activated at any time as the present call-coverage path for the user.
A call-coverage path may be activated by and/or for the user from anywhere on a LAN, WAN, or the Internet, so that the call-coverage path may be controlled remotely. Furthermore, the coverage-path system has the ability to consult with an on-line personal scheduling system (such as a calendar program) executing on the user""s PC or another machine networked with the user""s PC. A call-coverage path may then be administered to contain logic that refers to the personal scheduling system to obtain data, rather than having to have the data defined within the coverage-path system itself. This allows the user to enter personal schedule information in only one placexe2x80x94the scheduling systemxe2x80x94yet have their call-coverage path be based upon that information. In short, the invention as characterized above solves the prior-art""s problems that call-coverage paths must be directly updated with new information when the user""s schedule changes, and that potentially-confusing logic often makes administration of a call-coverage path difficult.
Generally according to one aspect of the invention, call processing for a plurality of users served by a switching system is effected as follows. In response to a first call, to a communications terminal (e.g., a telephone) of a first one of the users for whom the call is destined, the switching system obtains call-processing (e.g., call-coverage) information of the first user from a first computer, distinct from the switching system, of the first user by communicating with the first computer. In response to obtaining the first call-processing information, the switching system handles the first call as directed by the first call-processing information. Then in response to a second call, to a communications terminal of a second one of the users for whom the call is destined, the switching system obtains call-processing information of the second user from a second computer, distinct from the switching system and from the first computer, of the second user by communicating with the second computer. In response to obtaining the second call-processing information, the switching system handles the second call as directed by the second call-processing information. In other words, the switching system obtains each user""s call-processing information from that user""s own computer.
Generally according to another aspect of the invention, call processing for a plurality of users in a communications system comprising telecommunications terminals of a plurality of users, a switching system serving the plurality of users and connected to their telecommunications terminals, and a plurality of computers distinct from and connected to the switching system and each corresponding to a different one of the users, is effected as follows. At least some of the users each store their own call-processing (e.g., call-coverage) information on their own computer. In response to a call to a communications terminal of any one of those users for whom the call is destined, the switching system obtains the call-processing information for the one user from the one user""s computer by communicating with the one user""s computer. And in response to obtaining the call-processing path information from the one user""s computer, the switching system handles the call as directed by the obtained call-processing information.
Generally according to yet another aspect of the invention, call processing for a user in a communications system comprising at least one telecommunications terminal of the user, a switching system serving the user and connected to the telecommunications terminal, and a computer of the user distinct from and connected to the switching system, is effected as follows. The user stores in the computer the user""s own call-processing (e.g., call-coverage) information for processing exclusively calls to the telecommunications terminal of the user and to no other users"" terminals in the switching system. In response to a communication from the switching system seeking call-processing (e.g., call-coverage) information exclusively for a call to the user""s telecommunications terminal and not for calls to other users"" terminals, the computer returns the stored call-processing information to the switching system to enable it to handle the call as directed by the user""s stored call-processing information.
Preferably, a user defines their own call-coverage path on their computer via a graphical user interface, by defining a flowchart comprising interconnected route steps. The first route step corresponds to a destination point of a call (e.g., the user""s telecommunications terminal), and each subsequent route step corresponds to a different coverage point in the call-coverage path. Each route step specifies the conditions for selecting a connected one of the other route steps. In communicating with the computer, the switching system reports a state of the call to the computer. The computer applies the reported state to the flowchart to determine call-coverage treatment of the call, and returns the determined treatment to the switching system. If the switching system is unable to complete the call by handling it as directed by the returned treatment, it reports a new state of the call to the computer. The computer then applies the reported new state to the flowchart to determine further call-coverage treatment of the call, and returns the further treatment to the switching system. If the stored call-coverage path is a function of a schedule of the user and the computer is executing a scheduling program that defines the schedule of the user, the computer responds to the communication from the switching system by obtaining the user""s schedule information from the scheduling program, using the obtained schedule information to determine call coverage treatment of the call, e.g., by applying the scheduling information to the flowchart, and then returning the determined call coverage treatment to the switching system.
The invention encompasses methods, apparatus, and storage media containing programs for computers to effect the methods. While methods comprise steps of the just-characterized procedures, the apparatus effects the methods steps. An apparatus preferably includes an effectorxe2x80x94any entity that effects the corresponding step, unlike a meansxe2x80x94for each step.
These and other features and advantages of the invention will become more evident from the following description of an illustrative embodiment of the invention considered together with the drawing.